﻿<!DOCTYPE html>
<html lang="en">

<head>
	<title>WebRTC Demos, Experiments, Libraries, Examples | Muaz Khan</title>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
	<link href="./static/css/common.css" rel="stylesheet" />
</head>

<body>
	<h1>WebRTC Demos, Experiments, Libraries, Examples</h1>
	<p>Github: <a
			href="https://github.com/muaz-khan/WebRTC-Experiment">https://github.com/muaz-khan/WebRTC-Experiment</a></p>
	<hr />
	<h1>RecordRTC | WebRTC Audio+Video+Screen Recording</h1>
	<p>WebRTC JavaScript library for audio/video as well as screen activity recording. It supports Chrome, Firefox,
		Opera, Android, and Microsoft Edge. Platforms: Linux, Mac and Windows.</p>
	<p>Live Demo: <a
			href="https://www.webrtc-experiment.com/RecordRTC/">https://www.webrtc-experiment.com/RecordRTC/</a></p>
	<p><a href="https://npmjs.org/package/recordrtc"><img src="https://img.shields.io/npm/v/recordrtc.svg"
				alt="npm" /></a> <a href="https://npmjs.org/package/recordrtc"><img
				src="https://img.shields.io/npm/dm/recordrtc.svg" alt="downloads" /></a> <a
			href="https://travis-ci.org/muaz-khan/RecordRTC"><img
				src="https://travis-ci.org/muaz-khan/RecordRTC.png?branch=master" alt="Build Status: Linux" /></a></p>
	<p>Github (open sourced): <a
			href="https://github.com/muaz-khan/RecordRTC">https://github.com/muaz-khan/RecordRTC</a></p>
	<p>RecordRTC extension is <a
			href="https://chrome.google.com/webstore/detail/recordrtc/ndcljioonkecdnaaihodjgiliohngojp">available in the
			Chrome Web Store</a>.</p>
	<hr />
	<h1>MultiStreamsMixer</h1>
	<p>Pass multiple streams (e.g. screen+camera or multiple-cameras) and get single stream.</p>
	<p>Live Demo: <a
			href="https://www.webrtc-experiment.com/MultiStreamsMixer/">https://www.webrtc-experiment.com/MultiStreamsMixer/</a>
	</p>
	<p>Github: <a
			href="https://github.com/muaz-khan/MultiStreamsMixer">https://github.com/muaz-khan/MultiStreamsMixer</a></p>
	<hr />
	<h1>DetectRTC | Is WebRTC Supported In Your Browser?</h1>
	<p>A tiny JavaScript library that can be used to detect WebRTC features e.g. system having speakers, microphone or
		webcam, screen capturing is supported, number of audio/video devices etc.</p>
	<p>Live Demo: <a
			href="https://www.webrtc-experiment.com/DetectRTC/">https://www.webrtc-experiment.com/DetectRTC/</a></p>
	<p><a href="https://npmjs.org/package/detectrtc"><img src="https://img.shields.io/npm/v/detectrtc.svg"
				alt="npm" /></a> <a href="https://npmjs.org/package/detectrtc"><img
				src="https://img.shields.io/npm/dm/detectrtc.svg" alt="downloads" /></a> <a
			href="https://travis-ci.org/muaz-khan/DetectRTC"><img
				src="https://travis-ci.org/muaz-khan/DetectRTC.png?branch=master" alt="Build Status: Linux" /></a></p>
	<p>Github (open sourced): <a
			href="https://github.com/muaz-khan/DetectRTC">https://github.com/muaz-khan/DetectRTC</a></p>
	<hr />
	<h1>RTCMultiConnection</h1>
	<p>WebRTC JavaScript library for peer-to-peer applications (screen sharing, audio/video conferencing, file sharing,
		media streaming etc.)</p>
	<p><a href="https://npmjs.org/package/rtcmulticonnection"><img
				src="https://img.shields.io/npm/v/rtcmulticonnection.svg" alt="npm" /></a> <a
			href="https://npmjs.org/package/rtcmulticonnection"><img
				src="https://img.shields.io/npm/dm/rtcmulticonnection.svg" alt="downloads" /></a> <a
			href="https://travis-ci.org/muaz-khan/RTCMultiConnection"><img
				src="https://travis-ci.org/muaz-khan/RTCMultiConnection.png?branch=master"
				alt="Build Status: Linux" /></a></p>
	<p>Demos: <a
			href="https://rtcmulticonnection.herokuapp.com/demos/">https://rtcmulticonnection.herokuapp.com/demos/</a>
	</p>
	<p>Github: <a
			href="https://github.com/muaz-khan/RTCMultiConnection">https://github.com/muaz-khan/RTCMultiConnection</a>
	</p>
	<p>Socket.io signaling server: <a
			href="https://github.com/muaz-khan/RTCMultiConnection-Server">https://github.com/muaz-khan/RTCMultiConnection-Server</a>
	</p>
	<hr />
	<h1>WebRTC Scalable Broadcasting</h1>
	<p>This module simply initializes socket.io and configures it in a way that single broadcast can be relayed over
		unlimited users without any bandwidth/CPU usage issues. Everything happens peer-to-peer!</p>
	<p>Live Demo: <a
			href="https://rtcmulticonnection.herokuapp.com/demos/Scalable-Broadcast.html">https://rtcmulticonnection.herokuapp.com/demos/Scalable-Broadcast.html</a>
	</p>
	<p><a href="https://npmjs.org/package/webrtc-scalable-broadcast"><img
				src="https://img.shields.io/npm/v/webrtc-scalable-broadcast.svg" alt="npm" /></a> <a
			href="https://npmjs.org/package/webrtc-scalable-broadcast"><img
				src="https://img.shields.io/npm/dm/webrtc-scalable-broadcast.svg" alt="downloads" /></a></p>
	<p>Github (open sourced): <a
			href="https://github.com/muaz-khan/WebRTC-Scalable-Broadcast">https://github.com/muaz-khan/WebRTC-Scalable-Broadcast</a>
	</p>
	<hr />
	<h1>WebRTC Dashboard | Canvas2D Drawing Tool</h1>
	<p>Collaborative, extendable, JavaScript Canvas2D drawing tool, supports dozens of builtin tools, as well as
		generates JavaScript code for 2D animations.</p>
	<p>Live Demo: <a
			href="https://www.webrtc-experiment.com/Canvas-Designer/">https://www.webrtc-experiment.com/Canvas-Designer/</a>
	</p>
	<p>Github (open-sourced): <a
			href="https://github.com/muaz-khan/Canvas-Designer">https://github.com/muaz-khan/Canvas-Designer</a></p>
	<p><a href="https://npmjs.org/package/canvas-designer"><img src="https://img.shields.io/npm/v/canvas-designer.svg"
				alt="npm" /></a> <a href="https://npmjs.org/package/canvas-designer"><img
				src="https://img.shields.io/npm/dm/canvas-designer.svg" alt="downloads" /></a> <a
			href="https://travis-ci.org/muaz-khan/Canvas-Designer"><img
				src="https://travis-ci.org/muaz-khan/Canvas-Designer.png?branch=master" alt="Build Status: Linux" /></a>
	</p>
	<p>You video presentation: <a
			href="https://www.youtube.com/watch?v=pvAj5l_v3cM">https://www.youtube.com/watch?v=pvAj5l_v3cM</a></p>
	<hr />
	<h1>WebRTC Voice &amp; Text Translator</h1>
	<p>Translator.js is a JavaScript library built top on Google Speech-Recognition &amp; Translation API to transcript
		and translate voice and text. It supports many locales and brings globalization in WebRTC!</p>
	<p>Live Demo: <a
			href="https://www.webrtc-experiment.com/Translator/">https://www.webrtc-experiment.com/Translator/</a></p>
	<p>Github (open-sourced): <a
			href="https://github.com/muaz-khan/Translator">https://github.com/muaz-khan/Translator</a></p>
	<hr />
	<h1>getStats | Get WebRTC Peer Connection Stats</h1>
	<p>A tiny JavaScript library using WebRTC getStats API to return peer connection stats i.e. bandwidth usage, packets
		lost, local/remote ip addresses and ports, type of connection etc.</p>
	<p>Live Demo: <a href="https://www.webrtc-experiment.com/getStats/">https://www.webrtc-experiment.com/getStats/</a>
	</p>
	<p><a href="https://npmjs.org/package/getstats"><img src="https://img.shields.io/npm/v/getstats.svg"
				alt="npm" /></a> <a href="https://npmjs.org/package/getstats"><img
				src="https://img.shields.io/npm/dm/getstats.svg" alt="downloads" /></a></p>
	<p>Github (open-sourced): <a href="https://github.com/muaz-khan/getStats">https://github.com/muaz-khan/getStats</a>
	</p>
	<hr />
	<h1>FileBufferReader | File Sharing</h1>
	<p>FileBufferReader is a JavaScript library reads file and returns chunkified array-buffers. The resulting buffers
		can be shared using WebRTC data channels or socket.io. </p>
	<p>Live Demo: <a
			href="https://www.webrtc-experiment.com/FileBufferReader/">https://www.webrtc-experiment.com/FileBufferReader/</a>
	</p>
	<p>Github (open-sourced): <a
			href="https://github.com/muaz-khan/FileBufferReader">https://github.com/muaz-khan/FileBufferReader</a></p>
	<p><a href="https://npmjs.org/package/fbr"><img src="https://img.shields.io/npm/v/fbr.svg" alt="npm" /></a> <a
			href="https://npmjs.org/package/fbr"><img src="https://img.shields.io/npm/dm/fbr.svg" alt="downloads" /></a>
		<a href="https://travis-ci.org/muaz-khan/FileBufferReader"><img
				src="https://travis-ci.org/muaz-khan/FileBufferReader.png?branch=master"
				alt="Build Status: Linux" /></a></p>
	<p>Youtube video presentation: <a
			href="https://www.youtube.com/watch?v=gv8xpdGdS4o">https://www.youtube.com/watch?v=gv8xpdGdS4o</a></p>
	<hr />
	<h1>WebRTC Video Conferencing Demos</h1>
	<ul>
		<li>Simple Demo: <a
				href="https://rtcmulticonnection.herokuapp.com/demos/Video-Conferencing.html">https://rtcmulticonnection.herokuapp.com/demos/Video-Conferencing.html</a>
		</li>
	</ul>
	<hr />
	<h1>WebRTC File Sharing</h1>
	<ul>
		<li>Advance file sharing demo: <a
				href="https://rtcmulticonnection.herokuapp.com/demos/file-sharing.html">https://rtcmulticonnection.herokuapp.com/demos/file-sharing.html</a>
		</li>
	</ul>
	<hr />
	<h1>WebRTC Screen Sharing</h1>
	<ul>
		<li>P2P Screen Sharing: <a
				href="https://www.webrtc-experiment.com/Pluginfree-Screen-Sharing/">https://www.webrtc-experiment.com/Pluginfree-Screen-Sharing/</a>
		</li>
		<li>Simple getDisplayMedia: <a
				href="https://www.webrtc-experiment.com/getDisplayMedia/">https://www.webrtc-experiment.com/getDisplayMedia/</a>
		</li>
	</ul>
	<hr />
	<h1>Ffmpeg.js demos, both for browsers and node.js</h1>
	<ul>
		<li><a href="https://github.com/muaz-khan/Ffmpeg.js">https://github.com/muaz-khan/Ffmpeg.js</a></li>
	</ul>
	<hr />
	<h1>XHR-Signaling</h1>
	<p>XHR/XMLHttpRequest based WebRTC signaling implementation.</p>
	<p>Github (open-sourced): <a
			href="https://github.com/muaz-khan/XHR-Signaling">https://github.com/muaz-khan/XHR-Signaling</a></p>
	<hr />
	<h1>ASP.NET MVC based WebRTC Demo</h1>
	<p>A simple WebRTC one-to-one demo written in September, 2012! It supports public rooms as well as
		password-protected private rooms! MS-SQL database is used as signaling gateway!</p>
	<p>Github (open-sourced): <a
			href="https://github.com/muaz-khan/WebRTC-ASPNET-MVC">https://github.com/muaz-khan/WebRTC-ASPNET-MVC</a></p>
	<hr />
	<h1>WebSync-Signaling</h1>
	<p>WebSync is used as signaling gateway with/for WebRTC-Experiments e.g. RTCMultiConnection.js, DataChannel.js,
		Plugin-free screen sharing, and video conferencing.</p>
	<p>Github (open-sourced): <a
			href="https://github.com/muaz-khan/WebSync-Signaling">https://github.com/muaz-khan/WebSync-Signaling</a></p>
	<hr />
	<h1>Server Sent Events (SSE) over PHP</h1>
	<p>Server Sent Events (SSE) are used to setup WebRTC peer-to-peer connections.</p>
	<p>Github (open-sourced): <a
			href="https://github.com/muaz-khan/RTCMultiConnection/tree/master/demos/SSEConnection">https://github.com/muaz-khan/RTCMultiConnection/tree/master/demos/SSEConnection</a>
	</p>
	<hr />
	<h1>SignalR</h1>
	<p>SignalR project for RTCMultiConnection: <a
			href="https://github.com/muaz-khan/RTCMultiConnection-SignalR">https://github.com/muaz-khan/RTCMultiConnection-SignalR</a>
	</p>
	<ul>
		<li><a
				href="https://github.com/muaz-khan/WebRTC-Experiment/blob/master/Signaling.md#how-to-use-signalr-for-signaling">https://github.com/muaz-khan/WebRTC-Experiment/blob/master/Signaling.md#how-to-use-signalr-for-signaling</a>
		</li>
	</ul>
	<hr />
	<h1>Disclaimer</h1>
	<p>There is no warranty, expressed or implied, associated with thse experiments. Use at your own risk. I'm not
		responsible to maintain any of these experiments. So please fix bugs yourselves or simply do not use them.</p>
	<ul>
		<li><a href="https://www.webrtc-experiment.com/disclaimer/">https://www.webrtc-experiment.com/disclaimer/</a>
		</li>
	</ul>
	<hr />
	<h1 id="license">License</h1>
	<p>All <a href="https://github.com/muaz-khan/WebRTC-Experiment">WebRTC Experiments</a> are released under <a
			href="https://github.com/muaz-khan/WebRTC-Experiment/blob/master/LICENSE">MIT license</a> . Copyright (c) <a
			href="https://muazkhan.com/">Muaz Khan</a>.</p>
	<footer style="margin-top: 20px;"><small id="send-message"></small></footer>
</body>

</html>